package proposed.api.usage;

import java.lang.instrument.ClassFileTransformer;
import java.lang.instrument.IllegalClassFormatException;
import java.security.ProtectionDomain;

public class ConTestDynamicClassTransformer implements ClassFileTransformer {
    private final ContestApi instrumentor;

    public ConTestDynamicClassTransformer() {
        instrumentor = instantiateConTestApi();
    }

    public byte[] transform(ClassLoader loader, String className, Class<?> classBeingRedefined,
            ProtectionDomain protectionDomain, byte[] classfileBuffer)
            throws IllegalClassFormatException {

        byte[] conTestInstrumentedClassfileBuffer = instrumentor.instrument(loader, className,
                classBeingRedefined, classfileBuffer);

        return conTestInstrumentedClassfileBuffer;
    }

    private ContestApi instantiateConTestApi() {
        return null;
    }
}
